using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Dapper.Contrib.Extensions;
using Publicuse.Entity.AttributeUtil;
using SqlSugar;

namespace Publicuse.Entity
{
  /// <summary>
  /// 系统生成下载任务信息
  /// </summary>
  [DBTable("`geeker-downtask`", "系统生成下载任务信息")]
  [Table("`geeker-downtask`")]
  [SugarTable("`geeker-downtask`")]
  public class Downtask : BaseModel<long>
  {
    [Remark("文件大小")]
    public string fsize { get; set; }

    [Remark("任务生成用户账号")]
    public string fucode { get; set; }

    [Remark("任务生成开始时间")]
    [NoQuery]
    public string fstime { get; set; }

    [Remark("任务生成结束时间")]
    [NoQuery]
    public string fetime { get; set; }

    [Remark("任务生成业务类型")]
    public string ftype { get; set; }

    [Remark("任务生成文件名称")]
    public string fname { get; set; }

    [Remark("任务生成下载地址")]
    public string furl { get; set; }

    [Remark("任务生成耗时时间")]
    public string fhstime { get; set; }

    [Remark("任务生成下载次数")]
    public int fdowncount { get; set; } = -1;

    [Remark("任务生成下载用户账号")]
    public string fdownucode { get; set; }

    [Remark("任务生成下载时间")]
    public string fdowntime { get; set; }

    [Remark("任务生成删除时间")]
    public string fdeltime { get; set; }

    [Remark("任务生成删除用户账号")]
    public string fdelucode { get; set; }

    [Remark("任务生成额外说明")]
    public string taskreamrk { get; set; }

    public Downtask()
    {
      this.Id = 0;
    }
  }

  /// <summary>
  /// 查询参数
  /// </summary>
  public class DowntaskQuery : CommonQuery
  {
    public DowntaskQuery()
    {
      this.exportName = GetExportName;
      this.businessType = BusinessType.dowtask;
    }

    public static string GetExportName
    {
      get { return "downtask"; }
    }
  }
}
